// 入口函数
$(function () {
  // 1. 点击切换登录/注册页面
  $('#loginBox a').on('click', function () {
    $('#loginBox').hide()
    $('#regBox').show()
  })
  $('#regBox a').on('click', function () {
    $('#regBox').hide()
    $('#loginBox').show()
  })

  // 2. 表单校验
  // console.log(layui)
  let form = layui.form
  // 自定义校验规则，layui.form()
  // 参数是对象，属性是校验名称，值是校验规则

  form.verify({
    // 属性是校验名称，值是校验规则
    // 值有两种类型：函数和数组

    username: [/^[\S]{6,12}$/, '账号必须6到12位，且不能出现空格'],
    pwd: [/^[\S]{6,12}$/, '密码必须6到12位，且不能出现空格'],
    regpwd: function (value) {
      // value就是你给哪个标签添加这个校验规则，这个标签就赋值给value
      let txt = $('#regBox input[name="password"]').val()
      if (txt != value) {
        return '两次密码输入不一致'
      }
    }
  })

  // 3. 注册功能
  $('#formReg').on('submit', function (e) {
    // 阻止表单默认事件
    e.preventDefault()
    // 发起ajax
    axios({
      method: 'post',
      url: '/api/reguser',
      data: $(this).serialize()
    }).then(({ data: res }) => {
      //成功回调
      // console.log(res)

      if (res.status != 0) {
        // 使用layui方法美化提示框
        return layui.layer.msg(res.message)
      }

      // 使用layui方法美化提示框,提示成功
      layui.layer.msg('恭喜您,注册成功!')

      // 清空表单
      $('#formReg')[0].reset()

      // 跳转登录页面
      $('#regBox a').click()
    })
  })

  // 4.登录功能
  $('#formLogin').on('submit', function (e) {
    // 阻止表单默认行为
    e.preventDefault()

    // 发起ajax
    axios({
      method: 'post',
      url: '/api/login',
      data: $(this).serialize()
    }).then(({ data: res }) => {
      //成功回调
      console.log(res)
      if (res.status != 0) {
        return layui.layer.msg(res.message)
      }

      // 成功提示
      layui.layer.msg('恭喜您,登录成功')

      // 跳转主页面
      setTimeout(function () {
        location.href = '/index.html'
      }, 1000)

      //存储本地token身份验证,后面需要用
      localStorage.setItem('token', res.token)
    })
  })
})
